package com.zhsm.fuxi.mvp.contract

import com.hankkin.library.mvp.contract.IBaseViewContract
import com.hankkin.library.mvp.contract.IPresenterContract
import com.zhsm.fuxi.bean.*

/**
 * Created by GuZhC on 2018/10/9.
 * describe:
 */
interface MainContract {
    interface IView : IBaseViewContract {
        fun checkVersion(upinfo: CheckVersionResp)
        fun addMarker(carNum: List<StationBean>?)
        fun setTakeCarViews(stateStrId: OrderResp?)
        fun getNewUserInfoSuccess(userBean: UserBean?)
        fun initChoseCarView(carDatas: CarListResp?)
        fun showStationPic(it: List<String>?)
        fun cancelOrderSucess(it: String?)
        fun postTakeCarSurfaceSucess(it: OrderResp?)
        fun takeCarSucess(it: OrderResp?)
        fun openDoorSucess(it: OrderResp?)
        fun closeDoorSucess(it: String?)
        fun reportsInteriorSucess(it: OrderResp?)
        fun postBackCarSurfaceSucess(it: OrderResp?)
        fun getCarBreakdownsSucess(it: List<String>?)
        fun backCarSucess(it: OrderResp?)
        fun zfbPay(it: PayOrderinfo?)
        fun paySuccess(it: Int?)

    }

    interface IPresenter : IPresenterContract {
        fun checkVersion(version: String, showLoding: Boolean)
        fun getStations(lat: Double, Lon: Double)
        fun createOrder(id: Long?)
        fun getNewUserInfo()
        fun getCarList(pageNum: Int, stationId: Long)
        fun getStationPic(title: String?)
        fun getDoingOrder()
        fun cancelOrder(orderId: Long?)
        fun postTakeCarSurface(imagesUrl: ArrayList<String>)
        fun takeCar()
        fun openDoor(id: Long?)
        fun closeDoor(id: Long?)
        fun reportsInterior(damage: Boolean, dic: String?, pics: ArrayList<String>?)
        fun postBackCarSurface(imagesUrl: ArrayList<String>)
        fun backCar()
        fun zfbPay(orderId: Long)
        fun alipayQuery(string: String)
    }
}